package com.hanserwei.mydemo.stream;

import java.util.ArrayList;
import java.util.stream.Stream;

public class CollectTest1 {
    /*
    收集：把元素收集到一个容器中
    .collect(()->c,(c,x)-> void)

    ()->c :第一个无参函数Supplier，返回一个收集容器c，作用是创建一个收集容器。
    (c,x)-> void :第二个BiConsumer，作用是把元素x收集到收集容器c中。
    其实还有第三个参数，但暂时先不管，后面再说。但如果传null会报空指针
    第三个参数也是BiConsumer，直接传一个空操作的进去。
     */
    public static void main(String[] args) {
        Stream<String> stream = Stream.of("A", "B", "C", "D", "E", "F", "G");
        ArrayList<String> arrayList = stream
                .collect(ArrayList::new, ArrayList::add, (a, b) -> {});

        System.out.println(arrayList);
    }
}
